Establishing a collaboration environment

ABSTRACT

Establishing an electronic collaboration area includes receiving from an application a collaboration area request that identifies a collaboration area template structure, receiving one or more collaboration area parameters relating to the collaboration area template structure, and establishing a collaboration area having content that is a function of the collaboration area template structure and the received one or more collaboration area parameters, the collaboration area being accessible to a plurality of collaboration area participants.

BACKGROUND

[0001] The following description relates to a method and system forsimplifying the creation of a computerized collaboration area orenvironment.

[0002] Many collaboration tools exist today to help computer userscommunicate with other users in other locations in an efficient manner.For example, e-mail applications allow people to communicate in anasynchronous manner, whereby one person can send a message and anotherperson can later reply to the message. Chat applications allow similarcommunications to take place in real-time, or synchronously. Networkmeeting applications have also been developed to provide a virtual spacein which to hold real-time, synchronous meetings. Such applications canoffer live whiteboards on which meeting participants can provide input,presentations or other objects for participants to review and edit, andchat services for communications among the participants. Theapplications can also provide, or be integrated with, teleconferencingor video teleconferencing services.

[0003] More recently, collaboration environments known as virtual roomshave been developed to allow teams of workers to interact with eachother, either synchronously or asynchronously. For example, two groupsattempting to negotiate a contract may be provided with a virtual roomin which to hold the discussions electronically. The room may initiallybe provided with a draft contract, and various team members may be givenaccess to the room so that they may review, edit, annotate, and commenton the contract and on the comments and edits of others. Initially, thisprocess may take place asynchronously, whereby each person visits theroom at his or her convenience. As the contract comes closer to beingfinalized, synchronous sessions, or meetings, may be established, sothat multiple members are viewing the room at one time, and are able tocommunicate with each other, such as by teleconference, videoteleconference, or chat.

SUMMARY

[0004] This document discloses a method and system that assists inestablishing a virtual collaboration area. In one aspect acomputer-implemented method of establishing an electronic collaborationarea is disclosed. The method comprises receiving a collaboration arearequest that identifies a collaboration area template structure,receiving one or more collaboration area parameters relating to thecollaboration area template structure, and establishing a collaborationarea having content that is a function of the collaboration areatemplate structure and the collaboration area parameters, thecollaboration area being accessible to a plurality of collaboration areaparticipants. The collaboration area request may be received using aportal application, and the collaboration area may be produced as anarea in the portal application. The collaboration area may also comprisea plurality of pages and a plurality of views on one or more of theplurality of pages.

[0005] In one example, the collaboration area template structure maycomprise a plurality of default values, and the collaboration areaparameters may overwrite one or more of those values. Also, thecollaboration area parameters may specify collaboration services to madeavailable to the collaboration area participants, and may also specifyaccess roles that are available in the collaboration area. In addition,they may specify one or more participants and a role to be assigned toeach. Invitations may also be generated for the participants, andcustomization commands may be received after establishing thecollaboration area, to customize the operation of the collaborationarea. The customization commands may comprise commands to selectadditional participants for the collaboration area. In addition rolesmay be associated with the to control access by one or more participantsto the collaboration area. Before the collaboration area request isreceived, a user of the application may be provided with a list ofcollaboration area template structures.

[0006] A second collaboration area request that is associated with thefirst collaboration area may also be received, and may identify acollaboration area template structure. Parameters related to thetemplate structure may also be received, and a second collaboration areawithin the collaboration area may be established, and may comprisecontent that is a function of the collaboration area template structureand the received one or more collaboration area parameters. The secondcollaboration area may be accessible to a subset of the participants inthe collaboration area. In addition, the second collaboration requestmay be received from a different application than the collaborationrequest.

[0007] In another example, a method for producing a collaboration areain a portal is discussed. The method comprises accessing a list ofstored collaboration area template structures, receiving through theportal a selection of one structure from the list; providing through theportal a parameter list having a plurality of entries associated withthe one structure, receiving values for the plurality of entries, andmapping the values to the collaboration area template structure to forman instance of a collaboration area in the portal. A plurality ofcollaboration area participants may also be identified and may beprovided access to the collaboration area through the portal. Theparticipants may also be assigned to a role that controls their accessto the collaboration area.

[0008] The systems and techniques described here may provide one or moreof the following advantages. A user may be guided through the complexprocess of establishing a collaboration area using an automated set-upprocess, which may include a question-and-answer format. The user mayalso add creation parameters to the area at the time it is created. As aresult, the user may be more likely to establish such an area, do a morecomplete job of establishing the area with fewer errors, and establishthe area according to a configuration that is recognizable to, andeasily used by, the visitors to the area.

[0009] Details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features andadvantages may be apparent from the description and drawings, and fromthe claims.

DRAWING DESCRIPTIONS

[0010] These and other aspects will now be described in detail withreference to the following drawings.

[0011]FIG. 1 is a block diagram of a portal system that may be used toestablish collaboration sessions.

[0012]FIG. 2 is a block diagram showing the relationship of variousinformation that may be used in creating a collaboration area from atemplate.

[0013]FIG. 3 is a flowchart of a process for using a template to set upa collaboration area.

[0014]FIG. 4 is a screen shot of a collaboration area template inputform.

[0015] FIGS. 5-6 are screen shots of a collaboration area during itscreation using a template in a portal.

[0016] Like reference symbols in the various drawings indicate likeelements.

DETAILED DESCRIPTION

[0017] The systems and techniques described here relate to systems thatallow a computer user or users to establish a collaboration area for useby other computer users (who are together participants in thecollaboration area).

[0018]FIG. 1 is a block diagram of a portal system 10 that may be usedto establish collaboration sessions that occur in collaboration areas.In the pictured example, system 10 comprises a portal 11 that is capableof presenting a variety of information from various disparate sourcesthrough a unified visual interface. Portal 11 operates around a centralportal platform 12, which provides tools and processes for interactingwith various data stores, and for integrating the disparate data so thatit can be presented to various users in a customizable or consistentformat.

[0019] Portal platform 12 obtains data from various sources. Forexample, databases 20 may store various types of information, such asstructured business data stored in one or more flat file or relationaldatabases, or other types of data. Portal platform 12 may accessdatabases 20 directly, or may employ business intelligence module 18 toaccess and present the information. As an example, the information indatabases 20 may comprise sales and manufacturing data in a businesswarehouse of an enterprise resource planning (ERP) system. Portalplatform 12, in concert with business intelligence module 18, may accessand aggregate the appropriate data so as to present a simple graph ofrevenue and expense trends for a company. In addition, informationneeded to operate and configure portal platform 12

[0020] Data also may be accessed from a document repository 16, eitherdirectly by portal platform 12 or indirectly using knowledge managementmodule 14. As an example, document repository 16 may store anenterprise's various manufacturing specifications. Portal platform 12,with knowledge management module 14, may search for documents that mightbe relevant for an ongoing engineering project. Consequently, bothstructured and unstructured data may be accessed from other locationsusing a network 22, such as the Internet.

[0021] System 10 can present data to various users in custom visualformats, referenced here as portal displays. Generally, the displays maybe configured according to the role played by the person who is viewingthe portal. For example, employee portal display 24 may correspond to anemployee of a company or other enterprise and may provide the employeewith access to information the employee needs to conduct his or her job,such as an internal telephone directory, product ordering forms, e-mail,and scheduling. Likewise, supplier portal display 26 may provide asupplier of the company with information about the company's current andexpected procurement needs, along with payment information on thesupplier's accounts. Partner portal display 28 may provide access toinformation that is needed by a business partner, such as informationregarding a product (e.g., design documents and development schedule)that is being developed with the partner. Finally, customer portaldisplay 30 can provide access to information such as a product catalogand product shipping status.

[0022] Employee portal display 24 is shown in more detail to provide anexample of how portal content may be presented to a computer user in aform that can include a collaboration area. Employee portal display 24can provide various presentations of information. The information forthe collaboration area or room is organized hierchically, where theentirety of the information provided through the room is joined togetherin a workset. The workset may contain a number of components, which maybe organized in hierarchical folders. In general, a work set is a groupof objects that are related in a way such that they can carry out thefunctions of a particular component, such as a collaboration area.Various folders within the workset may represent pages that aredisplayed to visitors of the collaboration area. For example, one pagemay show a welcome screen for the area, other pages may show documentsthat are being edited in the area, and others may show scheduling toolsfor the project associated with the area. Each page may be furtherdivided into individual views, which are areas of a page that display aparticular unit of information, such as a calendaring application, atask list, a document, or information built up from a general view usingdata specific to the particular user, such as a local weather forecast.

[0023] The information provided by employee portal display isrole-based—it depends on the employee's position and interests withinthe enterprise. A portal may have a number of generic roles associatedwith it that define the worksets that will be presented to a particularclass of users, and the permission that those users will have withrespect to the workset. As an example, a portal may have a role assignedfor a CEO of the organization. Users assigned that role may be providedwith high-level overview information on the organization when theyaccess the portal. They may also be given only permissions to reviewinformation, but not to change it.

[0024] Roles may also be assigned more locally, such as for a particularcollaboration room. Thus, the role may define the pages within acollaboration area that may be accessed and the level of access that maybe provided. For example, the user who creates the area may assignherself the role of owner or project leader, and may thus have fullaccess to every page of the area, along with the ability to edit thearea, add and remove participants, and change the permissions for theparticipants. In addition, permissions or privileges can be delegated,such as if the user who creates the area assigns another user to be theowner of the area. Also, multiple users may have full privileges, suchas co-team leaders.

[0025] A user can select a particular display using top-level navigationbar 34 and second-level navigation bar 36. Top-level navigation bar 34provides access to the various worksets that are available to the user,such as home page displays, displays relating to staff, displays thatshow information about projects, and displays that show informationabout budgets. In the example shown in FIG. 1, the “HOME” category isselected, as would be indicated, for example, by a grayed-outbackground. Each category may comprise a number of individual pages,where not all of the pages may be displayed at once. Thus, as shown, thepages can be presented as tabs using second-level navigation bar 36.Also, each tab may have a number of sub-pages, which may be accessedthrough a list of hyperlinks. In the example shown, the “communications”page of the “home” category has been selected for display. The“communication” may also have various sub-pages that deal with variousaspects of communication.

[0026] Some examples of views that may be made available to a userhaving a particular role are shown in FIG. 1. These views may be movedand resized, and may otherwise perform like independent windows.Generally, however, views do not have as many navigation tools and othervisual overhead as would be presented in a window. Also, a view may bejoined onto a page with other views, so that the views move togetherwith the window in which the page is being displayed. For example, view38 might be configured to show various news headlines in the company'sindustry so that the user can keep up with relevant, current events. Theview 38 may be represented generically in code, and the user's portalmay supply particular information relevant to the user so as to create apersonalized instantiation of the view (such as a local weatherdisplay).

[0027] In addition, the user may be provided with a calendar view 44 toestablish and maintain appointments. Calendar view 44 may present datafrom a standard scheduling application (e.g., Microsoft Outlook) in aform that fits into display 24. Calendar view 44 may be repeated fromother areas of the portal, do that the user is presented with a singleinterface for scheduling operations.

[0028] Message view 46 may show the user's e-mail in-box or otherappropriate messaging window, and travel window 48 may show the statusof various travel arrangements for the user. These views are merelyillustrative, and various other views could be provided in addition toor instead, to display other sorts of information relevant to the user.In addition, the views may be updated in real-time or near real-time,such as by pushing changes to the display, so that the user is keptup-to-date. Also, the user may be able to move, resize, delete, andinsert windows so as to create a customized portal.

[0029] In addition to providing users with access to data, system 10 mayalso present information in a manner that allows for collaboration amongusers of system 10. For example, conference view 40 may provide arunning chat window or the video portion of a live teleconference.Likewise, presentation view 42 may show a document or other object thatis the subject of an ongoing collaboration session, such as a WebExmeeting. Other views may be provided so as to form a collaboration area,or collaboration room. For example, one page may be configured todisplay a CAD drawing of a product that is being co-developed with anumber of consultants. Views may be provided so that each consultant mayvisit the collaboration room at his or her convenience, may leavecomments and annotations on the drawing, and may respond to othercomments from other participants who have access to the collaborationroom.

[0030]FIG. 2 is a block diagram showing the relationship of variousinformation that may be used in creating a collaboration area from atemplate 60. The template 60 is a general definition of the content,structure, and roles of the collaboration area, such that it can be usedby various users to form a substantially complete area for a givenproject.

[0031] The template 60 is defined by a content workset 62, a templateworkset 64, and a template definition 65. The content workset 62 defineswhat content is available in the collaboration area. For example, thecontent workset 62 may be arranged in a hierarchy of pages and views,where the pages represent a page that can be accessed by at least someparticipants in the collaboration area, and the views represent whatthose participants will see in each area. The template workset 64defines roles of users that have access to the area, and can take avariety of forms. Each role may be represented as a folder under theworkset. The roles may be linked to the content workset 62, so that, forinstance, a “project lead” role may be provided full access to all ofthe content in the content workset. A template definition 65 comprises adescription of a particular template, a set of properties for roomswithin the area (e.g., room name and whether users are notified bye-mail when they are invited to the area), and a rule set that defineshow a particular area is created by mapping the room properties on theproperties of the views that make up each area. The content workset 62,template workset 64, and template definition 65, in their general forms,combine to form a template structure 61. In one form, the contentworkset 62 may be a fundamental element of a portal system through whichthe collaboration area is accessed.

[0032] When a template is created, the links from template workset 64 tocontent workset 62 may result in additional pages being created to formtemplate 60. As an example, if one page in content workset 62 containeda CAD drawing of a product that the collaboration team is to develop,and some members were to have full viewing and editing capabilities onthe drawing while others were to only have viewing capabilities, thetemplating process could create two different pages in template 60. Oneof the pages would provide for full interaction (e.g., editing andviewing), while the other would provide for partial interaction (e.g.,viewing only). One group of team members (as defined by their roles)could be given access to the former page, while another group could begiven access to the latter page. Alternatively, a single page may becreated, with varying accessibility that depends on the role of theparticipant trying to review the page.

[0033] Property mappings 66 represent various specific parameters abouttemplate 60. In particular, a template structure 61 may be stored in thesystem generally as a combination of the content workset 62 and thetemplate workset 64. When a user seeks to create a new collaborationarea, the template structure 61 may be copied to a part of the systemthat is specific to the collaboration area that is being formed.Property mappings 66 allow area-specific changes to be made to thetemplate structure as it is being copied so that the subsequently-formedtemplate 60 is a customized version of the original template structure.

[0034] For example, when a user selects a particular template to becreated, the system may prompt the user for information about theintended collaboration area. The information may be basic, such as thename of the area and the owner of the area. It may also be moredetailed, such as the types of possible content that the user would liketo make available in the area, the roles for the area, and thepermissions to be given each role. The requested information may dependon the organization and make-up of the template structure 61. Morecomplicated template structures may be accompanied by an interactiveinformation gathering process in which the user may provide values forvarious parameters and may be guided through a question-and-answer styleprocess

[0035] Using the information provided by the user, the system can copyselective portions of the template structure 61 to the system for theparticular collaboration area, and can provide information specific tothe collaboration area that overrides default information in thetemplate structure 61. In this manner, a specific instantiation of thetemplate 60 may be formed with little effort by the user.

[0036] Processing of the template 60 after it is initially created so asto create a complete area 74 is shown by owner modifications 70 and usermodifications 72. During the templating process, the system mightrequest only limited information from the owner, thus generating acollaboration area, as an effort in making the collaboration areacreation process less laborious. As a result, the owner may want to add,delete, or modify features after the initial collaboration area has beencreated. For example, the owner may want to create a role for the areathat was not supplied by the template structure 61, or may want to addadditional collaboration services (such as chat or instant messaging)that are not included in the template structure.

[0037] An owner may also pre-staff a collaboration area, by assigningvarious participants to the area before inviting any participants to thearea. The owner may, in such a situation, review what the room will looklike and prepare the area with the various documents and other resourcesthat will be available in the area before allowing anyone else in.

[0038] In addition, user modifications 72 may be performed on thetemplate. For example, a team member with appropriate permission mayalter the permission of other members. In addition, team members cancreate extra pages or other objects to be made available in thecollaboration area. For example, an engineer may wish to add a pagedirected to a particular subsystem on a project. The engineer couldcreate the page, assign content (such as CAD drawings and chat areas) toit, provide services (such as annotations and instant messaging),provide certain team members with permissions to access the page andothers with permissions to edit the information on the page, and linkthe page to the collaboration room. The engineer could do this using thetemplating process described above to help automate the process ofcreating the page, and the templated page could then be appended to thetemplate for the collaboration area.

[0039] In this manner, basic building blocks for a portal, such aspages, views, and worksets, may be used to define a template for acollaboration area. An area may be created by copying these elements andgiving the area its individual form by writing specific values to thevarious parameters for the area. The process may be performed in amanner that is similar for other processes that provide custominstantiations of a generic concept (such as local weather views orpersonalized news views). The values for instantiating the views may bethose provided by the user when creating the room, or can be generatedbased upon the input provided by the user. In addition, roles can beidentified with respect to the area, and participants in the area may beassigned roles so as to control their access in the various parts of thearea. An enterprise thus may focus its attention a single time oncreating a template for an area, and subsequent creation of areas fromthat template may be much easier. In addition, third-parties may alsoprovide ready-made templates. As such, a collaboration area may becreated as an integral part of a portal application.

[0040]FIG. 3 is a flowchart that shows a process for using a template toset up a collaboration area. At step 100, the system receives a requestfrom a user to provide a template. The system may initially provide theuser with a list of available templates, and the user may then selectone template from the list. Each template is associated with a number ofpreset underlying roles, work sets, views, and processes for a generalapplication. For example, a product development template may beconfigured to have participants in the roles that correspond to a leadengineer, design engineer, patent attorney, and technical marketer. Eachof the roles may also have default permissions for the collaborationarea. For example, the technical marketer may have the ability tocomment on a design, but may be denied the ability to change it. Theperson who creates a particular area may select from a number ofavailable participants that are identified as being available for eachrole when setting up a collaboration area for a project. In a likemanner, the person may customize or alter other default settings thatare associated with the template.

[0041] At step 102, the system obtains a name and owner for thecollaboration area. The name may be used to identify the area, so thatparticipants can know where to go to work on materials related to theproject. The owner in the example is the person who can changeattributes relating to the roles, views, work sets, and activities, suchas by adding other participants to the area or changing the accessprivileges of certain participants. The owner can be the person whoestablishes the area or its can be someone else.

[0042] Once an owner and name for the area have been established, ablank template can be presented to the user, as shown at step 104. Asone example, the template may contain a listing of the default roles forthe area, and the user may be given an opportunity to fill the roles, toadd or delete roles, and to change the attributes for the roles. Inaddition, the user can be presented with the various views that will bepresented to a participant in the area, and may move the views, add ordelete views, or otherwise make changes to the visual impression of thearea. These aspects of the template can also be modified as part of thetemplate creation process, such as by offering the user various optionsfor views and roles relating to the collaboration area.

[0043] An example of one modification that the user may make is shown atsteps 106-110. At step 106, the user may obtain a participant from amongthe various available participants. For example, the user may bepresented with an “address book” showing every available person in anorganization, and perhaps individuals from another organization if thecollaboration area is meant to be accessed by that other organization.The user may select an individual and may then assign them to one of thepre-defined roles for the collaboration area, as shown at step 108.Alternatively, the user may first select a role, may then be given alist of individuals who are identified as eligible to serve in thatrole, and may select one of those individuals. The user may assign rolesuntil all of the roles have been filled or until the user is otherwisefinished assigning roles, as shown at step 110. A later user may also beprovided with the opportunity to assign one or more roles, and the roleassignment process may also include a workflow component, such as one bywhich proposed participants are selected but are not allowed to beparticipants until their supervisors have approved.

[0044] A user may also assign certain resources to the collaborationarea, so that participants may access them. For example, as shown atstep 112, the user may assign one or more draft contracts to the area,such as by copying the files for those contracts into folders that canbe accessed from the area. Other resources can include various documentsand services that can be made available in the collaboration area. Theuser may also set rules to limit the ability of participants to view oredits the resource, as shown at step 114. The user may keep addingresources until all of the necessary resources are in the collaborationarea, as indicated by step 116. Other resources may also be added later,either by the user or by participants in the collaboration area. Inaddition, resources may be created in the collaboration area.Furthermore, the user may select from a number of collaboration serviceproviders that will be available to the participants.

[0045] The system may also receive text from the user to be sent in aninvitation to the participants, as shown at step 118. For example, theuser may explain to the participants what the collaboration area will beused for, and what each participant is expected to do in the area. Theinvitation may be sent to all of the participants, or to a subset of theparticipants. In addition, the user may assign tasks to variousparticipants (step 122) and may schedule a collaboration session (step124), such as a team kick-off meeting. Deadlines may be assigned to thetasks, such as by scheduling the initial meeting as the deadline, sothat participants complete the tasks (such as reviewing certaindocuments) before the meeting. Finally, the system may send theinvitations (step 126).

[0046]FIG. 4 is a screen shot of a collaboration area template inputform 150. Form 150 may be used to carry out a process like thatdescribed in FIG. 3. Although form 150 is shown as a single page in aportal with multiple input areas, it could also be presented in othermanners, such as by a series of dialogue boxes that question a user forinformation that can be used to fill in a general template.

[0047] Form 150 is shown as part of a portal presentation. At the top ofthe screen, top-level navigation bar 152 shows that the collaborationarea feature has been selected for review by the user. Second-levelnavigation bar 154 shows, through its “Overview” tab, that the user iscurrently reviewing a general outline of a collaboration area.

[0048] The display shows a number of views that relate to acollaboration area that the user is in the process of establishing. Mainview 155 shows the name that the user has assigned to the collaborationarea, the owner of the area, and the type of template used to establishthe area. As shown in the figure, each element of main view 155 hasalready been set. However, the values for each element may initially beblank and the user may provide the input, such as through drop-downboxes. For example, the “Type” entry may be blank initially, and theuser may pick one type from among a list of the available types oftemplates.

[0049] Participants and roles view 158 provides the user with anopportunity to give various people access to the collaboration area. Alist of available participants may be provided on the left, and the usermay select arrows to add people from the list to a list of actualparticipants on the right. Actual participants may be removed in asimilar manner. Also, roles may be assigned to the participants, such asby using a “Roles” drop-down box. For example, a participant who hasalready been added to the collaboration area may be highlighted, and arole may be selected for the participant from among the available roles(which may be limited by roles that are generally available to thatperson). Alternatively, if the template has already provided a list ofroles, one of those roles may be highlighted, and the list of availableparticipants may be filtered upon highlighting of the role to includeonly participants who can serve in the particular role. Invitees area140 allows the user to select which people, from among those that havebeen identified as participants, will be provided with an initialinvitation to the collaboration area.

[0050] Resources view 162 provides an area in which the user may addresources to a collaboration area. As shown, resources area 162 ispresented as a simple hierarchical file manager having nested folders.Thus, the user may drag files from another location into the folders,and may also create new folders. Other functionality for moving,creating, and copying resources may also be provided using any of anumber of well-known mechanisms.

[0051] Schedule view 164 provides an area in which the user mayestablish various events, such as meetings, for the collaboration areaparticipants. Schedule view 164 may be provided with typical calendarfunctionality, so that the user can, for example, establish a kick-offvideoconference, a weekly e-meeting, or any other event.

[0052] Team tasks view 166 provides an area in which variousparticipants may be assigned tasks, and deadlines may be assigned forthose tasks. As a result, a workflow process may be started by whichteam members are provided with messages regarding the progress towardcompleting tasks, and the system may be consulted to add or edit tasks,to signal the completion or partial completion of a task, or to reviewthe number of outstanding tasks and their progress toward completion.

[0053] FIGS. 5-6 are screen shots of a collaboration area during itscreation using a template. These figures are similar to the display ofFIG. 4, but show the collaboration area being created in two differentscreens. In FIG. 5, a display 170 shows general input parameters that auser can supply in initially creating a collaboration area. Navigationview 172 provides a number of links that the user may select to movearound in the portal that is displayed in part on display 170.Collaboration area set-up view 174 provides the user with an opportunityto enter various parameters to control the templating process. Forexample, the user may select a template from a drop-down list oftemplates, and the set-up view 174 can provide a brief description ofthe template. The user may also provide a name for the area, the user'srole in the area, an indication whether notifications of the area'screation should be sent, and boxes for creating the area or cancelingthe transaction. Various other information, both simple and complex, mayalso be elicited through set-up view 174, depending on the informationthat is needed to generate a specific collaboration area from atemplate.

[0054]FIG. 6 shows a display 180 of a collaboration area that has beeninitially created from a simple template, such as by way of the form inFIG. 5. Participant view 182 provides the area's owner with the abilityto add new participants to the collaboration area and assign thoseparticipants to particular titles that may correspond to underlyingroles that control the user's subsequent access to the collaborationarea. As shown, the owner (one Smith) is currently the only participantin the collaboration area, and is assigned as the Team Leader. Two otherassignments—Team Member and Project Assistant—are also readily availableunder the template that created the area. News view 186 can be astandard portal news feed having parameters assigned to it so as tocause news relevant to the project being carried out in thecollaboration area to be displayed. Collaboration area operation view184 shows several components of the collaboration area that allow theteam members to collaborate on a project. For instance, team members mayassign tasks to each other. In addition, the owner or othercollaboration area participants can add documents to the collaborationarea and organize them in a folder hierarchy so that the team mayreview, annotate, comment on, or edit the documents.

[0055] As shown, the various components used to create a collaborationarea from a template, and the components themselves, can be implementedusing standard portal elements. For example, various portions of thecollaboration area may be displayed as portal views on particular portalpages.

[0056] The systems and techniques described here may provide one or moreof the following advantages. The template presents a simplified systemand method for establishing a collaboration area. It can relieve a userof the need to identify the various roles that might have to beassociated with a particular project, and the need to assign attributesto the roles and the other elements of a collaboration area. It can saveadditional time and effort if a user modifies an existing generaltemplate to form a more particular template that can then be used byother users. In addition, it can work with standard portal technology sothat the user can avoid having to learn a new interface, and has all ofthe available collaboration area resources in convenient reach.

[0057] As used herein, the terms “electronic document” and “document”mean a set of electronic data, including both electronic data stored ina file and electronic data received over a network. An electronicdocument does not necessarily correspond to a file. A document may bestored in a portion of a file that holds other documents, in a singlefile dedicated to the document in question, or in a set of coordinatedfiles.

[0058] Various implementations of the systems and techniques describedhere can be realized in digital electronic circuitry, integratedcircuitry, specially designed ASICs (application specific integratedcircuits), computer hardware, firmware, software, and/or combinationsthereof. These various implementations can include implementation in oneor more computer programs that are executable and/or interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device, and at least one output device.

[0059] These computer programs (also known as programs, software,software applications or code) include machine instructions for aprogrammable processor, and can be implemented in a high-levelprocedural and/or object-oriented programming language, and/or inassembly/machine language. As used herein, the term “machine-readablemedium” refers to any computer program product, apparatus and/or device(e.g., magnetic discs, optical disks, memory, Programmable Logic Devices(PLDs)) used to provide machine instructions and/or data to aprogrammable processor, including a machine-readable medium thatreceives machine instructions as a machine-readable signal. The term“machine-readable signal” refers to any signal used to provide machineinstructions and/or data to a programmable processor.

[0060] To provide for interaction with a user, the systems andtechniques described here can be implemented on a computer having adisplay device (e.g., a CRT (cathode ray tube) or LCD (liquid crystaldisplay) monitor) for displaying information to the user and a keyboardand a pointing device (e.g., a mouse or a trackball) by which the usercan provide input to the computer. Other kinds of devices can be used toprovide for interaction with a user as well; for example, feedbackprovided to the user can be any form of sensory feedback (e.g., visualfeedback, auditory feedback, or tactile feedback); and input from theuser can be received in any form, including acoustic, speech, or tactileinput.

[0061] The systems and techniques described here can be implemented in acomputing system that includes a back-end component (e.g., as a dataserver), or that includes a middleware component (e.g., an applicationserver), or that includes a front-end component (e.g., a client computerhaving a graphical user interface or a Web browser through which a usercan interact with an implementation of the systems and techniquesdescribed here), or any combination of such back-end, middleware, orfront-end components. The components of the system can be interconnectedby any form or medium of digital data communication (e.g., acommunication network). Examples of communication networks include alocal area network (“LAN”), a wide area network (“WAN”), and theInternet.

[0062] The computing system can include clients and servers. A clientand server are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

[0063] Although only a few embodiments have been described in detailabove, other modifications are possible. Portions of this disclosurediscuss operation though a portal, but any of a number of access systemsand methods may be used to establish and manage collaboration sessions.The logic flow depicted in FIG. 3 does not require the particular ordershown, or sequential order, to achieve desirable results. For example,modifications to a general template may be made in any appropriateorder, and may be performed at many different places within the overallprocess. Likewise, the components shown in FIGS. 1 and 2 can be combinedor rearranged, or provided different labels. Other embodiments may bewithin the scope of the following claims.

What is claimed is:
 1. A computer-implemented method of establishing acollaboration area, the method comprising: receiving from an applicationa collaboration area request that identifies a collaboration areatemplate structure; receiving one or more collaboration area parametersrelating to the collaboration area template structure; and establishinga collaboration area having content that is a function of thecollaboration area template structure and the received one or morecollaboration area parameters.
 2. The method of claim 1, wherein thecollaboration area request is received using a portal application andthe collaboration area is produced as an area in the portal application.3. The method of claim 2, wherein the collaboration area comprises aplurality of pages and a plurality of views on one or more of theplurality of pages.
 4. The method of claim 1, wherein the collaborationarea template structure comprises a plurality of default values, and thecollaboration area parameters overwrite one or more of the defaultvalues.
 5. The method of claim 4, wherein the collaboration areaparameters specify collaboration services to made available to thecollaboration area participants.
 6. The method of claim 4, wherein thecollaboration area parameters specify access roles that are available inthe collaboration area.
 7. The method of claim 6, wherein thecollaboration area parameters specify one or more participants and arole to be assigned to each of the one or more participants.
 8. Themethod of claim 1, further comprising generating invitations to one ormore of the participants.
 9. The method of claim 1, further comprisingreceiving customization commands after establishing the collaborationarea to customize the operation of the collaboration area.
 10. Themethod of claim 9, wherein the collaboration area customization commandscomprise commands to select additional participants for thecollaboration area.
 11. The method of claim 1, further comprisingassociating roles with the collaboration area that control access by oneor more participants to the collaboration area.
 12. The method of claim1, further comprising, before receiving a collaboration area request,providing a user of the application with a list of collaboration areatemplate structures, and receiving a selection from among the list. 13.The method of claim 1, further comprising receiving a secondcollaboration area request associated with the first collaboration areathat identifies a collaboration area template structure; receiving oneor more collaboration area parameters relating to the collaboration areatemplate structure; and establishing a second collaboration area withinthe collaboration area having content that is a function of thecollaboration area template structure and the received one or morecollaboration area parameters, the second collaboration area beingaccessible to a subset of the participants in the collaboration area.14. The method of claim 13, wherein the second collaboration request isreceived from a different application than the collaboration request.15. The method of claim 1, wherein the collaboration area is accessibleto a plurality of collaboration area participants
 16. A method forgenerating a collaboration area in a portal, comprising: accessing aplurality of stored collaboration area template structures; receivingthrough the portal a selection of one structure from the plurality ofstored collaboration area template structures; providing through theportal a parameter list having a plurality of entries associated withthe one structure; receiving values for the plurality of entries; andmapping the values to the collaboration area template structure to forman instance of a collaboration area in the portal.
 17. The method ofclaim 16, further comprising identifying a plurality of collaborationarea participants, and providing access to the collaboration area to theparticipants through the portal.
 18. The method of claim 16, furthercomprising assigning each of the participants to a role that controlsaccess to the collaboration area.